共计 586 个字符,预计需要花费 2 分钟才能阅读完成。
提醒:本文最后更新于 2024-08-27 10:29,文中所关联的信息可能已发生改变,请知悉!
增加噪声
将噪声个数增加到 10%(实验中具体为 4000 个)
import cv2 as cv
import numpy as np
import random
img = cv.imread("img.png", 1)
(rows, cols, chn) = img.shape
cv.imshow("img.png", img)
# 加噪声
for i in range(4000):
x = np.random.randint(0, rows)
y = np.random.randint(0, cols)
img[x, y, :] = random.randint(0, 255)
cv.imshow("noise", img)
cv.imwrite("img_noise.png", img)
cv.waitKey()
cv.destroyAllWindows()
得到:
降噪
降噪结果
用上周的方法尝试,得到如下结果:
可以看到结果中仍然有部分噪声未被清除
合理性
区分度
差异度
再次处理
调整参数,且再次处理,得到:
可以看到,“内部”的噪声去除,只剩下,图像边界(四周)和图像边缘残留部分噪声(呈毛刺状,且在原图大小时,噪声不明显)
尝试批量处理
在测试中,发现:速度上基本不能满足测试的要求
可能原因:
- 常见的图片(一般为现在的普通手机的照片)像素较高,基本远大于测试用图(200*200)
- 程序步骤多(包含读入、检测噪声、清除噪声、写入、检测区分度、检测差异度)
所以程序仍需改进
正文完